1. Technical Field
The present teaching relates to methods, systems and programming for processing user search inquiries. Particularly, the present teaching is directed to methods, systems, and programming for suggesting search term(s) to a user.
2. Discussion of Technical Background
The advancement in the world of the Internet has made it possible to make a tremendous amount of information accessible to users located anywhere in the world. A search engine is a computer system or application that helps a user to locate the information. Using a search engine, a user can execute a search via a search term to obtain a list of information (i.e., search results) that matches the search term. While search engines may be applied in a variety of contexts, search engines are especially useful for locating resources that are accessible through the Internet.
Some search engines order the list of matching information before presenting the list to a user. For achieving this, a search engine may be configured to assign a rank to the matching information in the list. When the list is sorted by rank, matching information with a relatively higher rank may be placed closer to the head of the list than other matching information with relatively lower ranks. The user, when presented with the sorted list, sees the most highly ranked matching information first. To aid the user in his/her search, a search engine may rank the matching information according to relevance. Relevance is a measure of how closely the subject matter of particular information matches a search term.
In a typical situation, the user is enabled to enter an intended search term from a client computing platform associated with the user (e.g., smartphone, tablet, laptop, desktop, or any other client computing platform) via a user interface. Once the user completes inputting the intended search term, the completed search may be transmitted, over a communications network such as the Internet, to the search engine for execution. The user interface typically comprises an input box that allows the user to enter the intended search term one letter at a time.
Conventional search term suggestion techniques for determining and suggest proposed search term(s) to a user when the user is in progress of entering an intended search term typically employ a database to store historical search terms completed by a particular user and/or search terms completed by users that are “similar” to that particular user. As the particular user is in progress of entering an intended search term, these conventional techniques search the database for candidate terms that may be suggested to the user based on their relevance to the incomplete intended search term entered by the particular user thus far.
In entering the intended search term, the user, however, may not always correctly input letters into the intended search term. For example, mistyping of the search term might happen when the user incorrectly inputs some letters into the intended search term. For instance, the user may misinput (skip, unnecessarily add, and/or wrongly input) one or more letters in the intended search term. In another example, the user may modify the intended search term to correct grammar, to have a more precise meaning, to change to another search term and/or for any other concerns.
Therefore, there is at least a need to account for situations when a search term as being input may be incorrect when determining proposed search term(s) to be suggested to the user.
Therefore, there is a least a need to detect an incomplete search term as being input by a user contains misinput letters or characters when determining proposed search term(s) to be suggested to the user because the incomplete search term may not be the search term intended by the user.
Therefore, there is a least a need to establish storage to store information indicating input sequences of search terms by a user are incorrect for facilitating determining proposed search term(s) to be suggested to the user.
Therefore, there is a least a need to enable detection of misinput search term as being input a user.